package tech.waterism.model.dto;

import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * SMS_3模型初始状态
 * 
 * <p>新安江三水源蓄满产流模型的初始蓄水量状态</p>
 * 
 * @author 高宇
 * @since 2025-11-13
 */
public class SMS3InitialState {
    
    /** 深层蒸散发初始蓄水量 (mm) */
    @JsonProperty("WDP")
    private Double WDP;
    
    /** 上层蒸散发初始蓄水量 (mm) */
    @JsonProperty("WUP")
    private Double WUP;
    
    /** 下层蒸散发初始蓄水量 (mm) */
    @JsonProperty("WLP")
    private Double WLP;
    
    /** 自由水蓄水库初始蓄水量 (mm) */
    @JsonProperty("SP")
    private Double SP;
    
    /** 地下水壤中流初始流量 (m³/s) */
    @JsonProperty("FRP")
    private Double FRP;

    public SMS3InitialState() {
    }

    public SMS3InitialState(Double WDP, Double WUP, Double WLP, Double SP, Double FRP) {
        this.WDP = WDP;
        this.WUP = WUP;
        this.WLP = WLP;
        this.SP = SP;
        this.FRP = FRP;
    }

    public Double getWDP() {
        return WDP;
    }

    public void setWDP(Double WDP) {
        this.WDP = WDP;
    }

    public Double getWUP() {
        return WUP;
    }

    public void setWUP(Double WUP) {
        this.WUP = WUP;
    }

    public Double getWLP() {
        return WLP;
    }

    public void setWLP(Double WLP) {
        this.WLP = WLP;
    }

    public Double getSP() {
        return SP;
    }

    public void setSP(Double SP) {
        this.SP = SP;
    }

    public Double getFRP() {
        return FRP;
    }

    public void setFRP(Double FRP) {
        this.FRP = FRP;
    }

    @Override
    public String toString() {
        return "SMS3InitialState{" +
                "WDP=" + WDP +
                ", WUP=" + WUP +
                ", WLP=" + WLP +
                ", SP=" + SP +
                ", FRP=" + FRP +
                '}';
    }
}
